function fakeClick(obj) {
	var ev = document.createEvent("MouseEvents");
	ev.initMouseEvent("click", true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
	obj.dispatchEvent(ev);
}

function exportRaw(name, data) {
	var urlObject = window.URL || window.webkitURL || window;
	var export_blob = new Blob([data]);
	var save_link = document.createElementNS("http://www.w3.org/1999/xhtml", "a")
	save_link.href = urlObject.createObjectURL(export_blob);
	save_link.download = name;
	fakeClick(save_link);
}

function saveJson(id) {

	var objname1 = "第" + id + "层规则";
	var filename1 = objname1 + ".txt";
	var content1 = JSON.stringify(scene.getObjectByName(objname1).toJSON());
	exportRaw(filename1, content1);

	var objname2 = "第" + id + "层不规则";
	var filename2 = objname2 + ".txt";
	var content2 = JSON.stringify(scene.getObjectByName(objname2).toJSON());
	exportRaw(filename2, content2);

}

function loadJson() {
	$("#files").click();
}

function fileImport() {
	//获取读取我文件的File对象
	var objFile = document.getElementById("files");
	var files = $('#files').prop('files'); 
	
	for(var i = 0; f = files[i]; i++) {
		var reader = new FileReader(); //新建一个FileReader
		reader.readAsText(files[i], "UTF-8"); //读取文件
		reader.onload = function() { //读取完文件之后会回来这里
			load(this.result);
		}
	}	
	
	
	
	
//	var selectedFile = document.getElementById('files').files[0];
//
////          var name = selectedFile.name;//读取选中文件的文件名
////          var size = selectedFile.size;//读取选中文件的大小
////          
////          console.log("文件名:"+name+"大小:"+size);
//
//	var reader = new FileReader(); //这是核心,读取操作就是由它完成.
//	reader.readAsText(selectedFile); //读取文件的内容,也可以读取文件的URL
//	reader.onload = function() {
//		//当读取完成后回调这个函数,然后此时文件的内容存储到了result中,直接操作即可
//		//              console.log(this.result);
//		load(this.result);
//	}
}





function load(theJson) {

	var loadedGeometry = JSON.parse(theJson);
	var loader = new THREE.ObjectLoader();

	loadedMesh = loader.parse(loadedGeometry);
	scene.add(loadedMesh);

}

//
//      	//通用保存JSON功能
//      	function exportJson(id){	//id=1 jsoname='第一层'
//      		
//      		var objname1 = "第"+ id + "层规则";
//      		console.log(objname1);
//      		localStorage.setItem(  objname1, JSON.stringify(scene.getObjectByName(objname1).toJSON())   );
//      		
//      		var objname2 = "第"+ id + "层不规则";
//      		localStorage.setItem(objname2, JSON.stringify(scene.getObjectByName(objname2).toJSON()));
//				
//				console.log("第 " + id + " 保存成功");
//      		//localStorage.removeItem('userinfo');
//      	}
//	        	
//	        //通用加载JSON
//	        function loadJson(id){
//	        	var jsoname1 = "第"+ id + "层规则";	        	
//	        	load(jsoname1);
//	        	
//	        	var jsoname2 = "第"+ id + "层不规则";
//	        	load(jsoname2);
//	        	
//	        	
//	        	function load(jsoname){
//		        	var theJson = localStorage.getItem(jsoname);
//		        	if (theJson) {
//					    var loadedGeometry = JSON.parse(theJson);
//					    var loader = new THREE.ObjectLoader();
//					
//					    loadedMesh = loader.parse(loadedGeometry);
//					    scene.add(loadedMesh);
//					}
//	        	}
//	        	
//				console.log("第 " + id + " 加载成功");
//	        }